package model

import (
	"path/filepath"

	"gitee.com/liumou_site/gf"
	"gitee.com/liumou_site/logger"
)

func (api *Server) StaticIco() {
	// 只有当用户显式传入图标路径且文件存在时才使用外部文件
	if api.Ico != "" {
		f := gf.NewFile(api.Ico)
		f.IsFile()
		if f.IsFiles {
			absPath, err := filepath.Abs(api.Ico)
			if err == nil {
				api.Run.StaticFile("/favicon.ico", absPath)
				logger.Info("使用自定义图标: ", absPath)
				return
			}
			logger.Warn("无法获取图标绝对路径: ", api.Ico)
		} else {
			logger.Warn("指定的图标文件不存在: ", api.Ico)
		}
	}
	// 默认使用内置的favicon.ico（已在embed.go中设置）
	logger.Info("使用内置favicon.ico")
}

func (api *Server) StaticHtml() {
	// 只有当用户显式传入static路径且目录存在时才使用外部目录
	if api.Tmpl != "" {
		f := gf.NewFile(api.Tmpl)
		f.IsDir()
		if f.IsDirs {
			absPath, err := filepath.Abs(api.Tmpl)
			if err == nil {
				api.Run.Static("/static", absPath)
				logger.Info("使用自定义静态目录: ", absPath)
				return
			}
			logger.Warn("无法获取静态目录绝对路径: ", api.Tmpl)
		} else {
			logger.Warn("指定的静态目录不存在: ", api.Tmpl)
		}
	}
	// 默认使用内置的static目录（已在embed.go中设置）
	logger.Info("使用内置静态资源")
}
